package cn.jobstart.service;

import cn.jobstart.modelExt.TalentSubscriptionTaskExt;
import cn.jobstart.pubInter.IBaseService;
import cn.jobstart.pubInter.exception.SkException;
import cn.jobstart.searchExt.TalentSubscriptionTaskSearchExt;

import java.util.List;


/**
 * @author sunke
 * @Date 2023-09-06 15:00:21
 * @description TalentSubscriptionTaskService      人才订阅任务
 */
public interface ITalentSubscriptionTaskService extends IBaseService<TalentSubscriptionTaskExt, TalentSubscriptionTaskSearchExt, String> {


    /**
     * 更新简历更新数量
     * @param taskId
     * @param count
     */
    void updateResumeUpdateCountByTaskIdAndCount(String taskId,int count);

    /**
     * 更新爬取的总数量
     * @param taskId
     * @param count
     */
    void updateResumeGraspCountByTaskIdAndCount(String taskId,int count);


    /**
     *
     * @param status
     * @param taskId
     */
    void updateStatus(int status,String taskId);

    /**
     * 启动某一订阅任务
     *
     * @param taskId
     * @param adminId
     * @param adminTruename
     * @throws SkException
     */
    void start(String taskId, String adminId, String adminTruename) throws SkException;

    /**
     * 暂停
     *
     * @param taskId
     * @param adminId
     * @param adminTruename
     * @throws SkException
     */
    void stop(String taskId, String adminId, String adminTruename) throws SkException;


    /**
     * 得到待启动列表
     *
     * @return
     * @throws SkException
     */
    List<TalentSubscriptionTaskExt> getWaitRunList() throws SkException;

    TalentSubscriptionTaskExt getWaitRun() throws SkException;

    /**
     * 得到在运行中的
     * @return
     */
    TalentSubscriptionTaskExt getRunning();


}